#include<iostream>
using namespace std;

const int N=1e5+10;
int arr[N], sign[N];
int n, m;

int main()
{
	cin>>n>>m;
	for(int i=1; i<=m; i++)
	{	
		cin>>arr[i];
	}
	for(int i=2; i<=m; i++)
	{
		int l=arr[i]>arr[i-1]? arr[i-1]: arr[i];
		int r=arr[i]>arr[i-1]? arr[i]: arr[i-1];
		sign[l]++; sign[r]--;
	} 
	long long ret=0;
	for(int i=1; i<n; i++)
	{
		sign[i]+=sign[i-1];
	} 
	for(int i=1; i<n; i++)
	{
		int a, b, c;
		cin>>a>>b>>c;
		ret+=min(a*sign[i], c+b*sign[i]);
	} 
	cout<<ret;
	return 0;
} 
